package com.itema.mapper;

import com.itema.pojo.OperateLog;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface OperateLogMapper {

    //插入日志数据
    @Insert("insert into operate_log (operate_emp_id, operate_time, class_name, method_name, method_params, return_value, cost_time) " +
            "values (#{operateEmpId}, #{operateTime}, #{className}, #{methodName}, #{methodParams}, #{returnValue}, #{costTime});")
    public void insert(OperateLog log);

    /**
     * 查询所有操作日志（关联员工表获取操作人姓名）
     */
    @Select("select ol.id, ol.operate_emp_id, e.name as operate_emp_name, ol.operate_time, " +
            "ol.class_name, ol.method_name, ol.method_params, ol.return_value, ol.cost_time " +
            "from operate_log ol " +
            "left join emp e on ol.operate_emp_id = e.id " +
            "order by ol.operate_time desc")
    List<OperateLog> list();

}
